﻿using System;
using System.Collections;
using Assets.Scripts.Game.Event;
using Assets.Scripts.Game.GameObj;
using UnityEngine;

namespace Assets.Scripts.Game.AI
{
    public enum AiStateType
    {
        Null = 0,
    }

    public class State
    {
        private readonly AiStateType _curType;
        public State()
        {
            _curType = AiStateType.Null;
        }

        public AiStateType GetAiStateType()
        {
            return _curType;
        }

        public virtual bool CanEnter(Characater obj)
        {
            return true;
        }






        public virtual void OnEnter(Characater obj)
        {
            
        }

        public virtual void OnUpdate(Characater obj,float dt)
        {
            
        }

        public virtual void OnExit(Characater obj)
        {
            
        }

        public virtual void OnEvent(Characater obj, BaseEvent command)
        {
            
        }




    }
}
